package org.example.rabbitmqdemo.service;

import org.springframework.stereotype.Service;

import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

@Service
public class DeleteOutlierService {
    public String solution2 (String msg){
        if (msg == null || msg.isEmpty()) {
            return ""; // 如果消息为空，返回空字符串
        }

        // 将 msg 按照逗号分隔成数字字符串数组
        List<String> numbers = Arrays.asList(msg.split(","));

        // 使用流式操作过滤掉小于 0 的值，并将过滤后的值转回字符串
        List<String> filteredNumbers = numbers.stream()
                .map(String::trim) // 去除数字两边的空格
                .filter(number -> {
                    try {
                        double num = Double.parseDouble(number); // 解析为浮点数
                        return num >= 0; // 过滤掉小于0的数字
                    } catch (NumberFormatException e) {
                        return false; // 如果无法转换为数字，则认为是非法数字
                    }
                })
                .collect(Collectors.toList());

        // 将过滤后的数字重新组合成一个逗号分隔的字符串
        return String.join(",", filteredNumbers);
    }
}
